---
number-sections: true
format:
html:
toc: true
execute:
warning: false
error: false
freeze: auto
---Lab08: 데이터로 소통하기: Quarto
1 실습 1: 기본 Quarto 다큐먼트의 작성
1.1 새 Quarto 다큐먼트 열기
File > New File > Quarto Document를 실행한다. Title과 Author란에 적절한 텍스트를 기입하고 아래에 위치한 Create 버튼을 클릭한다.
그렇다면 아마도 아래의 화면이 보일 것이다.
--- 으로 둘러싸인 YAML(YAML Ain’t Markup Language)에 아래와 같은 몇 가지 key: value 를 더해보자.
기본적인 Quarto 작성법은 다음과 같다.
텍스트: 그냥 작성
코드 청크(Code Chunk): Insert > Executable Cell > R(Ctrl+Alt+I)
표(Table): Insert > Table
그림(Figure): Insert > Figure
링크(Link): (원하는 텍스트 선택 후) Insert > Link
머릿말(Header): Normal > Header 1~6 중 선택
이제 지난 실습록(데이터 수집하기)의 일부분을 재현해보자. 일반 텍스트와 코드 청크를 넣고 이를 렌더링해보면 그럴듯한 html 파일이 만들어짐을 확인할 수 있을 것이다.
1.2 Quarto 문서 작성 팁
추가로 몇 가지의 팁을 소개한다.
첫째, R의 패키지나 함수를 다르게 표시할 수 있다. 지금까지의 실습록에서 tidyverse 함수를 tidyverse 와 같이 표시하던 것이 기억날 것이다. 이는 해당 텍스트를 선택한 후, Format에서 Code를 누르면 생성된다. 혹은 Ctrl+D로 실행할 수 있다.
둘째, Call-out 이다. 몇몇 실습록에서 아래와 같은 모습을 보았을 것이다. 문서 중간에 팁이나 주의를 알려주고 있다.
Callout에는 공지(note), 팁(tip), 중요사항(important), 주의(caution), 경고(warning) 등이 있다. 이는 비주얼 에디터 메뉴 Insert-Callout에서 선택할 수 있고, ::: 으로 둘러싸인 부분에 글이나 코드 청크를 작성하면 된다.
2 실습 2: 개인 블로그 만들기
Quarto를 활용하면 개인 블로그도 만들 수 있다. 어떻게 보면 블로그나 웹사이트는 위에서 만든 html의 집합이라고도 볼 수 있다. 블로그는 다음의 과정을 통해 생성할 수 있다.
2.1 새로운 Quarto Blog 프로젝트 시작하기
File > New Project > Create Project > Quarto Blog를 선택한다.
디렉토리 이름과 경로를 설정하고, 아래에 위치한 Create Project 버튼을 클릭한다.
2.2 렌더링하여 결과를 살펴보기
Render 버튼을 클릭하여 결과를 확인한다. 결과는 오른쪽 패널의 Viewer 탭에 나타난다. Viewer 탭의 Show in new window 아이콘을 클릭하면 웹브라우저 상에 결과를 나타낼 수 있다.
Files 탭을 클릭하면 프로젝트 폴더에 다음과 같은 파일들이 생성되어 있음을 확인할 수 있다. 조교의 도움을 받아 각각의 파일이 어떠한 역할을 하는지 파악한다.
| File | Description |
|---|---|
| _quarto.yml | Quarto 프로젝트 파일 |
| index.qmd | 블로그의 홈페이지 |
| about.qmd | 블로그의 어바우트 페이지 |
| posts/ | 포스트를 포함하고 있는 폴더 |
| posts/_metadata.yml | 포스트가 공유하고 있는 옵션들 |
| styles.css | 웹사이트의 CSS |
2.3 구성 요소 수정하기
구성 요소를 수정하여 자신의 개인 블로그를 만들어 나간다.
2.3.1 메타데이터
블로그의 전체적인 모습은 _quarto.yml 파일에 의해 규정된다. _quarto.yml 파일의 내용을 살펴보고 조교의 도움을 받아 필요한 부분을 수정한다.
다음의 웹사이트를 참조한다. 특히, 25개의 테마를 살펴보고, 그 중 하나를 선택한다. theme 만 바꿔주어도 아래와 같이 그럴듯한 블로그가 완성된다.
하나의 테마만 적용하는 것이 아니라, 다크 모드도 지정할 수 있다. 아래의 코드를 _quarto.yml 에 추가해보자.
theme:
light: flatly
dark: darkly2.3.2 홈페이지(home page)
블로그의 홈페이지는 포스트 디렉토리에 포함되는 모든 포스트의 리스트를 제공하는 것으로 index.qmd 파일에 의해 규정된다. index.qmd 파일의 내용을 살펴보고 조교의 도움을 받아 필요한 부분을 수정한다.
다음의 웹사이트를 참조한다. 특히 리스팅 유형(listing types) 옵션 세개(default, table, grid)를 살펴보고, 그 중 하나를 선택한다. 아래의 그림을 보면 그 차이를 직관적으로 알 수 있을 것이다.
2.3.3 어바우트 페이지(about page)
어바우트 페이지는 블로그와 블로그의 저작자에 대한 부가 정보를 제공하는 것으로 about.qmd 파일에 의해 규정된다. about.qmd 파일의 내용을 살펴보고 조교의 도움을 받아 필요한 부분을 수정한다.
다음의 웹사이트를 참조한다. 특히 템플릿(template) 옵션 다섯개(jolla, trestles, solana, marquee, broadside)를 살펴보고, 그 중 하나를 선택한다. 아래는 jolla(좌)와 solana(우) 템플릿의 모습이다. 원한다면 사진도 변경할 수 있다.
2.3.4 포스트 디렉토리(posts directory)
블로그의 콘텐츠는 포스트 디렉토리 속에 포함되어 있다. 기본적으로 하나의 포스트는 하나의 폴더인데, 개별 폴더 속에는 index.qmd라는 이름의 Quarto 파일이 들어 있다. 그리고 Quarto 다큐먼트에 포함되어 있는 이미지는 images라는 서브 폴더에 저장되어 있다.
정리하면, 블로그를 만들기 위해 만든 폴더에 생성되는 .yml 파일은 블로그의 전체적인 모습을, index.qmd는 생성될 첫 블로그 페이지를, about.qmd는 블로그 정보를 담당한다. 이렇게 만들어진 블로그에 새로운 글은 하위의 post 폴더 내에 다시 qmd 파일을 생성하고 렌더링하여 포스팅할 수 있다.
이제 다음의 절차에 따라 새로운 포스트를 생성해 본다.
posts 디렉토리 아래에 새로운 디렉토리를 생성한다. 이름은 날짜와 주제가 결합된 형태로 하면 좋다.
새로운 디렉토리에 index.qmd 파일을 생성한다. 아래와 같이 YAML 해더를 수정하고, 실습 1에서처럼 새로운 포스트를 작성한다.
지금까지 배운 7번의 R 실습을 복습 겸 블로그에 차근차근 포스팅하여 나만의 기술 블로그로 만들 수도 있다.
2.4 블로그를 웹 상에 출판하기
어느 정도 개인 블로그가 완성되었다면, 다음의 절차에 따라 웹에 출판한다. 여기서는 Posit에서 제공하는 무료 출판 사이트인 Quarto Pub을 활용한다.
Quarto Pub에 접속하여 계정을 만든다.
RStudio에서, 왼쪽 하단부의 Terminal 탭을 누른다.
프롬프트에 다음과 같이 입력하고 실행한다: quarto publish quarto-pub
조교의 도움을 받고, 다음을 웹사이트를 참고한다.